package com.e3.sysmg.security.service;

import java.util.List;

import com.e3.core.base.ServiceException;
import com.e3.sysmg.security.model.ModuleModel;
import com.e3.sysmg.security.model.RoleModel;
import com.e3.sysmg.security.model.UserModel;

public interface SecurityService {

	public ModuleModel newModule(ModuleModel moduleModel)
			throws ServiceException;

	public ModuleModel modifyModule(ModuleModel moduleModel)
			throws ServiceException;

	public void checkModuleExisted(ModuleModel moduleModel)
			throws ServiceException;

	public void checkRoleExisted(RoleModel roleModel)
			throws ServiceException;

	public void deleteModules(List<ModuleModel> moduleModels) throws ServiceException;
	
	public void deleteModuleByIds(Long[] moduleIds)	throws ServiceException;

	public RoleModel newRole(RoleModel roleModel)
			throws ServiceException;

	public RoleModel modifyRole(RoleModel roleModel)
			throws ServiceException;

	public void deleteRoles(List<RoleModel> roleModels)
			throws ServiceException;

	public void checkUserExisted(UserModel userModel)
			throws ServiceException;

	public UserModel newUser(UserModel userModel)
			throws ServiceException;

	public UserModel modifyUser(UserModel userModel)
			throws ServiceException;

	public void deleteUsers(List<UserModel> userModels)
			throws ServiceException;

}